// 定义网络请求API地址
const baseURL = 'https://www.cangchaoshi.com/'
// 封装网络请求开始
const http = ({ url, data, method} = {}) => {
  let sessionKey = wx.getStorageSync('token') 
  // 以同步方式获取token避免异步操作出现延迟错误，具体可根据自己项目情况而定
  // 我这里需要在除了登录后的所有接口拼接token，因此判断了url是否为登录接口由此添加不同的url拼接方式，具体可根据业务逻辑完善代码
  var requestUrl = ''
      requestUrl = baseURL + url
  // 添加请求加载等待
  wx.showLoading({
    title: '加载中...'
  })
  // Promise封装处理
  return new Promise((resolve, reject) => {
    wx.request({
      // 请求地址拼接
      url: requestUrl,
      data: data,// 获取请求头配置
      header: { 'content-type': 'application/x-www-form-urlencoded' }, 
      method: method,
      // 成功或失败处理
      complete: (res) => {
        // 关闭等待
        wx.hideLoading()
        if(res.statusCode === 200){
          resolve(res.data)
        }else{
           reject(res)
        }
        // console.log(res)
        // // 进行状态码判断并处理，退出登录
        // if (res.data.code === 8888) {
        //   wx.navigateTo({
        //     url: '/pages/home/index',
        //   })
        // } else if (res.data.code !== 0) {
        //   // 获取后台返回报错信息
        //   let title = res.data.msg
        //   // 调用全局toast方法
        //   if(title !=undefined&& title!=undefined)
        //   showToast(title)
        // } else if (res.data.code === 0) {
        //   resolve(res)
        // } else {
        //   reject(res)
        // }
      }
    })
  })
}
// 添加请求toast提示
const showToast = title => {
  wx.showToast({
    title: title,
    icon: 'none',
    duration: 1500,
    mask: true
  });
}

// 进行url字符串拼接
const getUrl = url => {
  if (url.indexOf('://') == -1) {
    url = baseURL + url
  }
  return url
}

// 重构请求方式
const _fetch = (content) => {
  return http({
    url: content.url,
    data: content.data,
    method: content.method
  })
}
module.exports = {
  baseURL,
  _fetch,
  showToast
}